package com.xhwl.logistics.vo;

import com.alibaba.fastjson.annotation.JSONField;
import com.alibaba.fastjson.annotation.JSONType;
import lombok.Getter;
import lombok.Setter;

import java.util.Date;

@Setter
@Getter
//@JSONType(orders = {"id",
//        "projectName", "parkingLotName",
//        "plateNumber", "carColor", "carType",
//        "ownerName", "ownerPhone",
//        "creatorAccountName", "createdAt", "editorAccountName", "updatedAt",
//        "vehicleCardVO",
//        "vehicleRelationCarToCardVO"})
@JSONType(orders = {"id",
        "projectName", "parkingLotId", "parkingLotName",
        "plateNumber", "color", "type", "cardType",
        "ownerAccountId","ownerName", "ownerPhone",
        "registerAccountName", "registerTime", "editorAccountName", "updatedAt",
        "card",
        "cardValidTime",
        "cardChargeRuleId", "name", "validStartTime", "validEndTime"})
public class VehicleCarVO {

    private Integer id;

    private String projectName;

    private Integer parkingLotId;

    private String parkingLotName;


    private String plateNumber;

    @JSONField(name = "color")
    private String carColor;

    @JSONField(name = "type")
    private String carType;

    //******************项目交互妥协字段******************
    private String cardType;
    //******************项目交互妥协字段******************

    private Integer ownerAccountId;

    private String ownerName;

    private String ownerPhone;


    @JSONField(name = "registerAccountName")
    private String creatorAccountName;

    @JSONField(name = "registerTime")
    private Date createdAt;

    private String editorAccountName;

    private Date updatedAt;


    @JSONField(name = "card")
    private VehicleCardVO vehicleCardVO;


    @JSONField(name = "cardValidTime")
    private VehicleRelationCarToCardVO vehicleRelationCarToCardVO;


    //******************兼容以前的设计******************
    @JSONField(name = "cardChargeRuleId")
    private Integer cardId;

    private String name;

    @JSONField(name = "validBeginTime")
    private Date validStartTime;

    @JSONField(name = "validEndTime")
    private Date validEndTime;
    //******************兼容以前的设计******************

}
